利用 PROTEUS 软件调试串口通信最简单实用的方法 您所在的位置:网站首页 proteus中virtual terminal在哪找 利用 PROTEUS 软件调试串口通信最简单实用的方法

利用 PROTEUS 软件调试串口通信最简单实用的方法

2024-06-20 11:54| 来源: 网络整理| 查看: 265

前些日子,做而论道发表了“双机(51单片机)串行通信最基本的方法”博文。网址:http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/blog/item/b738c5d010b2ce349a5027ee.html后来,有些网友来电询问关于修改、调试方面的一些问题,为此,做而论道将就利用 PROTEUS 软件进行仿真调试的方法再作一简单的介绍。

进行串行通信,一般应该有两个计算机,两个程序,利用一条串行通信电缆,互相“全双工”的传送信息。互相通信的这两个程序,应该有一个是成熟的程序,而另一个可以是有待调整、修改的。

利用 PROTEUS 软件,问题就简单多了,不用去找两台计算机和成熟的程序。PROTEUS 软件中,含有多种虚拟仪器,有一个可以模拟完善的串行通信设备,可以和我们编写的、待调整的程序进行全双工的通信。这个设备就是:Virtual Terminal,中文应该叫做:虚拟终端。

其实,用两个 Virtual Terminal,连接上线路,它们就可以通信了。请看下图:

利用 PROTEUS 软件调试串口通信最简单实用的方法 - 非著名博主 - 电子信息角落图片链接:http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/album/item/2b2330cf2f24ef4093457e9a.html这是个最简单的“单工”串行通信系统,在这个系统里面并不需要单片机,不用装载程序。把它运行起来,就会弹出两个对话窗口,在左边的,只能键入不能显示,键入的字符,将会传输的右边窗口中,在右边显示出来。大家可以自己试试看,很简单的。可以双击 Virtual Terminal,在弹出的对话框中设置通信参数。

当理解了 Virtual Terminal 的一般应用之后,就可以把单片机,加入到通信系统中了。见下图:

利用 PROTEUS 软件调试串口通信最简单实用的方法 - 非著名博主 - 电子信息角落图片链接:http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/album/item/2b2330cf2f24ef4093457e9a.html#IMG=50c3740094519495267fb59b为了清晰起见,在图中,仍然使用了“单工”的形式。

上面的 Virtual Terminal,是向单片机输送数据的,当键入'A',单片机将会显示出来字符的 ASCII 码 41。注意,这是以 16 进制显示的。大家可以胡乱敲键,看看它们的 ASCII 码都是什么!在单片机一方,按下“发送”按键,将会把拨码开关输入的二进制数字,发送到下面的 Virtual Terminal 中,图中把 39 显示成了 9,能看出来是怎么回事吗?

图中的单片机,里面应该载入程序,其源代码如下:;----------------------------------------    ORG 0000H    SJMP START    ORG 0003H    LJMP INT0_INT    ORG 0023H    LJMP UART_INT;----------------------------------------START:    MOV SP, #60H    MOV SCON,#50H   ;方式1, 8-n-1    MOV TMOD,#20H    MOV TH1, #0FDH ;波特率设置    MOV TL1, #0FDH ;     SETB TR1     SETB IT0         ;P3.2下降沿触发中断    SETB EX0    SETB ES          ;开放中断    SETB EA

    SJMP $;----------------------------------------INT0_INT:    MOV P2, #0FFH    MOV A, P2       ;读出的拨码开关信息    MOV SBUF, A     ;向串口发送    RETI;----------------------------------------UART_INT:    JB   TI, _FA_    MOV A, SBUF    ;读出串口收到的信息    MOV P0, A       ;送到P0口进行显示    CLR RI    RETI;--------------------_FA_:    CLR TI    RETI;----------------------------------------   END;----------------------------------------呵呵,注意到了吗?这程序是和前述博文的程序是完全相同的。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有